Redis : Basic Usage#2
2016/09/06 |
This is the Basic Usage of Redis with "redis-cli" client program.
Following examples are basic one, you can see more commands on Official Site below.
⇒ http://redis.io/commands |
|
[1] | This is the basic Usage of Keys. |
root@dlp:~#
redis-cli -a password # set Value of a Key 127.0.0.1:6379> set key01 value01 OK # get Value of a Key 127.0.0.1:6379> get key01 "value01" # delete a Key 127.0.0.1:6379> del key01 (integer) 1 # determine if a Key exists or not (1 means true) 127.0.0.1:6379> exists key01 (integer) 1 # set Value of a Key only when the Key does not exist yet # integer 0 means Value is not set because the Key already exists 127.0.0.1:6379> setnx key01 value02 (integer) 0 # set Value of a Key with expiration date (60 means Value will expire after 60 second) 127.0.0.1:6379> setex key01 60 value01 OK # set expiration date to existing Key 127.0.0.1:6379> expire key02 30 (integer) 1 # add Values to a Key 127.0.0.1:6379> append key01 value02 (integer) 15 # get substring of Value of a Key : [Key] [Start] [End] 127.0.0.1:6379> substr key01 0 3 "valu" 127.0.0.1:6379> set key02 1 OK # increment integer Value of a Key 127.0.0.1:6379> incr key02 (integer) 2 # increment integer Value of a Key by specified value 127.0.0.1:6379> incrby key02 100 (integer) 102 # decrement integer Value of a Key 127.0.0.1:6379> decr key02 (integer) 101 # decrement integer Value of a Key by specified value 127.0.0.1:6379> decrby key02 51 (integer) 50 # set values of some Keys 127.0.0.1:6379> mset key01 value01 key02 value02 key03 value03 OK # get some Values of Keys 127.0.0.1:6379> mget key01 key02 key03 1) "value01" 2) "value02" 3) "value03" # rename existing Key 127.0.0.1:6379> rename key01 key02 OK 127.0.0.1:6379> mget key01 key02 1) (nil) 2) "value01" # rename existing Key but if renamed Key already exists, command is not run 127.0.0.1:6379> renamenx key02 key03 (integer) 0 127.0.0.1:6379> mget key02 key03 1) "value01" 2) "value03" # get number of Keys on current Database 127.0.0.1:6379> dbsize (integer) 4 # move a key to another Database 127.0.0.1:6379> move key03 1 (integer) 1 127.0.0.1:6379> select 1 OK 127.0.0.1:6379[1]> get key03 "value03" # delete all Keys on current Database 127.0.0.1:6379> flushdb OK # delete all Keys on all Database 127.0.0.1:6379> flushall OK 127.0.0.1:6379> quit # process with reading data from stdout root@dlp:~# echo 'test_words' | redis-cli -a password -x set key01 OK root@dlp:~# redis-cli -a password get key01 "test_words\n" |
[2] | It's possible to use CAS operation with watch command on Redis. If another process changed value of the Key between multi - exec, change is not applied to the Key. |
# watch a key 127.0.0.1:6379> watch key01 OK 127.0.0.1:6379> get key01 "value01" 127.0.0.1:6379> multi OK 127.0.0.1:6379> set key01 value02 QUEUED 127.0.0.1:6379> exec 1) OK |